package cn.dlust.tt.module.teacher.controller.admin.courses.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "管理后台 - 课程 Response VO")
@Data
@ExcelIgnoreUnannotated
public class CoursesRespVO {

    private Long Id;

    @Schema(description = "课程名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
    @ExcelProperty("课程名称")
    private String courseName;

    @Schema(description = "授课教师ID（外键，指向system_users.id）", requiredMode = Schema.RequiredMode.REQUIRED, example = "30023")
    @ExcelProperty("授课教师ID（外键，指向system_users.id）")
    private Long teacherId;

    @Schema(description = "开课院系ID", example = "25781")
    @ExcelProperty("开课院系ID")
    private Long deptId;

    @Schema(description = "课程描述", example = "你猜")
    @ExcelProperty("课程描述")
    private String description;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "是否删除", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("是否删除")
    private Boolean deleted;

    @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("租户编号")
    private Long tenantId;
}